Part Number Hot Search : 
2KA16 383AMX1T W567S080 89C51 SK7N3 FCX593 Z8400BK1 NJM2739E
Product Description
Full Text Search
 

To Download GF9101 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  gennum corporation p.o. box 489, stn. a, burlington, ontario, canada l7r 3y3 tel. +1 (905) 632-2996 fax. +1 (905) 632-5946 e-mail: info@gennum.com www.gennum.com revision date: july 1999 document no. 520 - 64 - 7 data sheet GF9101 data ? a ? out 7 4r delay 1,3,4,5 r data ? b ? in configuration register 2 14.11 13.6 truncated r negate delay sel + pipeline ? out 13.6 r r r 1 0 13.6 13.6 pipeline ? in fb ? sel carry in 13.6 data b sel +10 +10 1 0 13.6 13.6 zero r 7 ena enb enc coef ? addr data ? a ? in data ? b ? out +10 +10 sel ? a/b tap cell 2 tap cell 1 r r r r r tap cell 11 tap cell 12 features ? highly optimized & flexible architecture for multirate fir filtering applications  implements dual 12 tap filters operating at 40 mhz or single 23 or 24 tap filter operating at 20 mhz maximum data rate  stores up to 108 fully-programmable 12 tap filters with 12 bit coefficients at each tap, dynamically addressable in each clock cycle  3 flexible memory loading modes  20 bit pipeline for cascading up to 3 devices  20 bit output accumulator  filter output negate and zero controls  supports both symmetrical and asymmetrical fir filters  40 mhz maximum computation and input/output data rates applications video rate conversion; high performance fir filters; adaptive digital filters; video encoding; digital modulation description the GF9101 is a high performance multirate digital filter which can be programmed to implement a wide range of signal processing functions using both symmetrical and asymmetrical filter structures. it is composed of a 12-tap fir filter with internal ram to hold up to 108 individual filters. an externally controlled address bus selects one of the 108 filters in each clock cycle. pipelined architecture allows cascading of up to three devices with no additional hardware. two 10-bit input shift registers are provided for multiplexed filtering applications. the 12-bit coefficients can be programmed in serial, high speed parallel or microprocessor modes. in the high speed parallel mode, any one of the 108 filters can be reprogrammed in 18 clock cycles. block diagram ordering information part number package temperature GF9101 - cmq 160 pin metal quad 0 to 70 c multi gen ? GF9101 high performance multirate digital filter
520 - 64 - 7 2 GF9101 i/o description symbol pin no. type description v dd 1, 10, 20, 29, 40, 41, 59, 69, 80, 81, 90, 99, 109, 120, 121, 129, 140, 150, 160 +5 v power supply pins. 0.1 f capacitors between the v cc and gnd pins are recommended. gnd 3, 6, 8, 19, 33, 36, 39, 46, 49, 60, 73, 76, 79, 83, 86, 88, 100, 113, 116, 119, 122, 125, 139, 153, 155, 159 device ground. clk_in 138 i system clock. all inputs except for configure, and all internal registers are clocked on the rising edge of clk_in. data_a_in (9-0) 127, 128, 130-137 i input data to registers a0 - a11. 9 bit signed or 10 bit unsigned data. data_b_in (9-0) 141-149, 151 i input data to registers b11 - b0. 9 bit signed or 10 bit unsigned data. ena 23 i shift enable for a0 - a11. enables shifting of a registers when high. enb 24 i shift enable for b0 - b11. enables shifting of b registers when high. enc 25 i enable for c0-c11. enables c registers when high. the c registers transfer data from either the a or b registers depending on the state of sel_a/b . sel_a/b 22 i selects a or b registers. selects registers a when high or registers b when low to be transferred to the c registers. coef_data (7-0) 96-98, 101-105 i data bus for coefficients and configuration register: a) parallel and microprocessor loading modes : coef_data (7-0) is used to load 8 bit data into internal ram. b) serial loading mode: coef_data (7) is used to serially load the internal ram. c) configuration mode: coef_data (6-0) are inputs to the configuration register. coef_addr (9-0) 78, 77, 75, 74, 72, 47, 45-42 i address bus for internal ram (address 0 ? > 107): a) run mode: coef_addr (6-0) selects one of the 108 sets of 12 coefficients in the internal ram. b) parallel and micro-processor loading modes: selects the internal ram address for the 8-bit data loading coef_data (7-0). coef_wr 17 i enable for coef_data (7-0). load_en must be enabled for coef_wr to work: a) parallel and micro-processor loading modes : enables coef_data (7-0) registers or loading 8 bit data in internal ram. b) serial loading mode: on a high to low transition, a one bit data gets clocked in to the internal ram through coef_data bit 7. load_en 18 i used during loading mode. this signal selects a particular GF9101 device when 2 or more share the same bus for loading. the particular GF9101 device is selected when set low. load_en must be enabled for coef_wr . for a single GF9101 using the serial loading, this pin can be set low. negate 126 i this signal negates the filter sum before it enters the pipelined output section when high. zero 123 i zeros filter sum before it enters the pipelined output section when low. fb_sel 124 i feedback select. selects data in pipeline_in when low or filter sum in pipeline_out when high to the input of the output accumulator.
520 - 64 - 7 3 GF9101 GF9101 operation the GF9101 has two operating modes: the load mode and the run mode. in the load mode, the coefficients for the filters are written to the internal ram. in the run mode, the GF9101 is used to filter signals. before the GF9101 can filter signals, two steps must be performed: 1. configuration - is accomplished by writing one 7 bit word into the configuration register. this register holds static operating parameters that affect both the load mode and the run mode. 2. memory loading - is done after configuration. the internal ram must be loaded with at least one of the 108 filter coefficient sets before signals can be processed. configuration the GF9101 is reset by holding configure high for at least one clock cycle. configuration occurs upon a high to low transition on the configure pin. this transition registers coef_data (6-0) into the configuration register. table 1 shows the meaning of each bit in the configuration register. when configure is high, the GF9101 is reset but the values in the internal ram and registers in the run mode sections are not altered. this means that the GF9101 may be reconfigured after the internal ram has been loaded. memory loading the GF9101 contains 12 tap cells with 108 12-bit memory locations for each tap. when loading the memory, the tap cells must be viewed as 6 memory banks with 108 24-bit memory locations in each bank. each memory bank is assigned to a pair of tap cells as shown in table 2. during configuration, either the parallel, microprocessor, or serial loading is selected. when in the load mode, the memory outputs are undefined. please refer to the GF9101 block diagram and notice that, even though the memory outputs are undefined, several valid outputs may be in the processing section below the multipliers and can exit the GF9101 correctly. this would be useful for adaptive filtering where the tap memories can be changed while the GF9101 outputs are still valid. during power up, the internal ram of the GF9101 is in a random state, and is not intialized to zero. configure 21 i GF9101 reset/configure. resets the GF9101 when high for at least one clock period. loads coef_data (6-0) into the configuration register on a high to low transition. this bit is set low in run mode. when configure is high, the GF9101 is reset but the values in the internal ram and registers in the run mode sections are not altered. this means that the GF9101 may be reconfigured after the internal ram has been loaded. pipeline_in (19-0) 38,37, 35, 34, 32-30, 28-26, 15-11, 9, 7, 5, 4, 2 i pipeline input. input to the output accumulator when fb_sel is low. data_a_out (9-0) 71, 70, 68-61 o output data from register a11. data_b_out (9-0) 58-50, 48 o output data from register b0. pipeline_out (19- 0) 82, 84, 85, 87, 89, 91- 95, 106-108, 110- 112, 114, 115, 117, 118 o pipeline output. output of the accumulator or pipeline_in depending on fb_sel. s_load_cmp 16 o serial loading complete. a) serial loading mode: when high, indicates that all the internal ram has been loaded. scan_in, scan_en 157, 156 set low. test 158 set high. pout, scanout 152, 154 no connect. note: all unused inputs of the GF9101 should be connected to gnd i/o description symbol pin no. type description
520 - 64 - 7 4 GF9101 parallel loading if parallel loading is selected, both the coef_wr pin and the load_en pin determine whether the GF9101 is in the load mode. when coef_wr and load_en are both low, the load mode is selected, the run mode is disabled, and writes to memory can occur. parallel loading is random access and synchronous. data is written through coef_data (7-0) and its destination is determined by coef_addr (9-0). coefficient memory is loaded by writing 8 bits at a time, first to two temporary registers (bits 15 -0) and finally to the desired memory bank (bits 23-0). each memory bank word is loaded in three clock cycles. coef_addr (9-7) defines the address location for temporary registers (temp_reg_a and temp_reg_b) and memory banks. coef_addr (6-0) determines the filter coefficient address (0 -107) in the internal ram. coef_addr (6-0) must be less than 108. in table 3, coef_addr (9-7) determines the following: temp_reg_a and temp_reg_b temporarily hold memory bits, (7-0) and (15-8) respectively. three 8 bit writes are necessary to write one 24-bit memory as follows: 1. load coef_data (7-0) into temp_reg_a 2. load coef_data (7-0) into temp_reg_b 3. load coef_data (7-0), temp_reg_b (7-0), and temp_reg_a (7-0) into the selected memory bank, mb0- mb5 (23-0). while coef_addr (9-7) selects mb0-mb5 for writing, coef_addr (6-0) selects the memory bank location that the 24-bit word is written into. parallel loading is synchronous with clk_in. when coef_wr and load_en are both low, 8-bit words will be written on the rising edge of clk_in. consecutive writes may be done indefinitely by keeping coef_wr and load_en low. a parallel loading timing diagram is shown in figure 1. table 1: configuration register format configuration register bit coef_data(6-0) meaning 0 mode a (1 if a input signed, 0 if unsigned) 1 mode b (1 if b input signed, 0 if unsigned) 3, 2 delay_sel selects delay for pipelining: bits 3, 2 delay in clk_in cycles 0, 0 1 0, 1 3 1, 0 4 1, 1 5 4 data_b_sel 0 selects b12 for two 12 tap filters or one 24 tap filter by externally connecting data_a_out to data_b_in. data_b_sel 1 selects a12 for a 23 tap filter. 6,5 load mode select (see below) bits 6, 5 loading mode 0, 0 serial 0, 1 parallel 1, 0 microprocessor 1, 1 reserved table 2: memory locations for internal ram memory banks (bits) taps (bits) 0 (23-12) 0 (11-0) 0 (11-0) 2 (11-0) 1 (23-12) 3 (11-0) 1 (11-0) 4 (11-0) 2 (23-12) 5 (11-0 2 (11-0) 6 (11-0) 3 (23-12) 7 (11-0) 3 (11-0) 8 (11-0) 4 (23-12) 9 (11-0) 4 (11-0) 10 (11-0) 5 (23-12) 11 (11-0) 5 (11-0) 12 (11-0) table 3: temporary loading registers and memory banks coef_addr(9-7) (binary) destination number of bits 111 temp_reg_b 8 (15-8) 110 temp_reg_a 8 (7-0) 101 mb5 1 24 (23-0) 100 mb4 24 (23-0) 011 mb3 24 (23-0) 010 mb2 24 (23-0) 001 mb1 24 (23-0) 000 mb0 24 (23-0) note 1: memory bank no. 5
520 - 64 - 7 5 GF9101 the timing diagram shown in figure 1 loads the memories shown in table 4: fig. 1 parallel loading timing diagram the address generated is shown in table 5. timing for the parallel loading signals is the same as that for other synchronous inputs. microprocessor loading if microprocessor loading is selected, the load_en pin alone determines the run mode or the load mode. when load_en is low, the load mode is selected, the run mode is disabled, but a write will not occur until coef_wr is low. microprocessor loading is random access and asynchronous. like parallel loading, microprocessor loading uses coef_data (7-0) and coef_addr (9-0) to write three 8-bit words for each 24-bit memory written. addressing is the same as for parallel loading. in microprocessor mode, at least one set of filter coefficients table 4: memory loaded into internal ram in parallel load mode tap (location) 12-bit word in hex. memory bank 1 (0) fb2 mb0 2 (0) ef4 mb0 11 (107) ccc mb5 12 (107) ddd mb5 coef_data (7-0) coef_wr load_en clk_in configure coef_addr (9-0) 300 xx f4 2e fb dd cd cc xx xx 2eb 3eb 36b 000 380 xx table 5: address generation for parallel loading example destination coef_addr (9-7) in binary coef_addr (6-0) in hex coef_addr (9-0) in hex temp_reg_a 110 x 300 temp_reg_b 111 x 380 mb0 000 0 000 temp_reg_a 110 x 36b or 300 temp_reg_b 111 x 3eb or 380 mb5 101 6b 2eb
520 - 64 - 7 6 GF9101 need to be loaded into the internal ram. if location 0 is used for filtering, mb0 > mb5 must be loaded for this location. the example shown in figure 2 loads the value bb h into temp_reg_a. fig. 2 microprocessor loading timing diagram serial loading serial loading is sequential and synchronous. if serial loading is selected the GF9101 will not enter the run mode until the entire serial load sequence is completed at which time the s_load_cmp signal will go high. a bit will be written each time load_en is low and coef_wr makes a high to low transition. once the GF9101 is configured for serial loading, 24 x 108 x 6 =15552 bits must be written before the run mode is entered automatically. the 15552 bits must be entered in the order defined in table 6. mb0 is loaded first from ram location 0 starting to fill the first 12 bits of tap 2. mb5 ram location 107, tap 11 is loaded last. when the serial load sequence is completed, s_load_cmp will go high and the run mode will be active. below is a serial loading timing diagram. this example shows the serial loading start-up sequence. notice that the falling edge of coef_wr is used to register the serial data. the frequency of coef_wr should be 1/4 clk_in frequency. table 6: serial mode loading order fig. 3 serial mode timing diagram 300 h load_en coef_data (7-0) coef-wr bb h coef_addr (9-0) memory bank 0 memory bank 1 memory bank 5 ram location tap 2 tap 1 tap4 tap 3 1,2,3 .... 12 13 ........ 24 2593 ............................. 2617 0,1,2 .... 11 0 .......... 11 0 .......... 11 0 .......... 11 25 .................................. 48 2618 ............................. 2642 0 .......... 11 0 .......... 11 0 .......... 11 0 .......... 11 2568 ............................. 2592 5160 ............................. 5184 0,1,2 .... 11 0 .......... 11 0 .......... 11 0 .......... 11 tap12 tap 11 5185 ............................. 5208 0 .......... 11 0 .......... 11 5209 ............................. 5233 0 .......... 11 0 .......... 11 15528 ...........................15552 0 .......... 11 0 .......... 11 0 1 107 .......... .......... .......... .......... .......... .......... .......... ............... ............... ............... coef_data (7) load_en clk_in configure s_load_cmp coef_wr bit 2 bit 1 bit 3 bit 15551 bit 15552
520 - 64 - 7 7 GF9101 filter architecture for the following discussion on filter architecture, refer to the GF9101 block diagram and figure 4. fig. 4 tap cell (1-12) coefficient multiplication and addition stage two shift registers, a and b, are used to shift input data through the GF9101. notice that if data_b_sel was set low during configuration, data applied at data_a_in enters at tap 1 and exits from tap 12, while data applied at data_b_in enters at tap 12 and exits from tap 1. this gives two 12 tap filters. if data_b_sel was set high during configuration, data applied at data_a_in enters at tap 1, reverses direction at tap 12 (bypasses reg_12b) and exits from tap 1 on data_b_out, while data_b_in is disabled. this gives a 23 tap filter. ena and enb control the shifting of the input data. the c register holds the next set of 12 input values to be applied to the multipliers. if enc is high, sel_a/b , determines whether the a or b shift register data enters the c register. sel_a/b , also determines whether the mode a or mode b control signal enters the mult_mode register. the value in the mult_mode register determineswhether theinputdatato themultiplierisrecognized as signed or unsigned. mode a and mode b are separate, static control signals which determine signed/unsigned for a or b input data respectively. they are common to all taps. when using the GF9101 as a 23 or 24 tap filter (combiningreg_a and reg_b to get a single filter output), mode a and mode b should be in the same state. if not, a signed/unsigned mismatch will occur. one needs to be cautious while using the GF9101 as two separate filters with mode a and mode b not in the same state (data entering reg_a is signed/ unsigned while in reg_b it is the opposite of reg_a) . if enc is low and sel_a/b , changes state, a signed/unsigned mismatch will occur. to avoid an error under these circumstances, always make enc high after a sel_a/b , state change. the input values in the c register are multiplied by the coefficient values in the coef register and the result enters an adder tree . the coefficients that enter the coef register are stored in the internal ram and are selected by the externally controlled coef_addr (6-0) bus, which is common to all taps. at the output of the adder tree is the untruncated sum of taps 1 through 12. this sum is then truncated as shown in the GF9101 block diagram. the sum then passes through a variable delay along with the zero and negate signals. the variable delay is provided so that complementary sums from cascaded GF9101 ? s may be added together in the pipelined output stage. the zero signal zeros the sum and the negate signal negates the sum. data _a_in +10.0 configuration register ena to next tap enb enc 1 0 +10.0 +10.0 +10.0 10.11 10.11 to adder data_b_in to next tap b reg c reg mult reg coef reg 108 x12 coef reg +10.0 / 9.0 mult mode reg signed / unsigned a reg +10.0 +10.0 0.11 0.11 mode a mode b 7 coef ? addr 1 0 sel ? a/b r r r r r
520 - 64 - 7 8 GF9101 pipeline_in, pipeline_out stage the calculated filter sum from the adder tree and delay enters into the pipelined output stage. figure 5 shows the block diagram for the pipelined structure. fb_sel determines whether the sum is added to the current pipeline_out or the registered pipeline_in. the result is then registered at pipeline_out. when using one GF9101, this configuration can be used to add two partial filter sums from the a and b registers. another application would be to use the pipeline_in port for adding dc offset or sync and burst signals (i.e. for 4:2:2 to 4 ? sc rate conversion). this can be achieved by clocking in the sync and burst signals from an external prom connected to the pipeline_in. by connecting pipeline_out of one GF9101 device to pipeline_in of another, up to three GF9101 ? s may be cascaded to form larger filters. fig. 5 block diagram for pipelined output stage fig. 6 timing diagram for the pipelined output stage application notes video applications for the GF9101 include video rate conversion and high performance fir filters. the following section presents a number of examples which show odd and even symmetric and asymmetric filters. odd-tap symmetric filter the GF9101 can be configured as an odd-tap symmetric filter. a 23-tap odd-symmetric filter using one GF9101 will be discussed. for an odd-tap symmetric filter, the configuration word is shown in table 7. the maximum data rate using this filter configuration is 20 mhz, where the filter is clocked at twice the data rate of 40 mhz, the frequency of clk_in. the filter has input data a n and filter data coefficients cn (c0 ? > c11) as shown in figure 7. the input enters the filter at data_a_in and exits the filter from data_b_out. the coefficient c11 is only multiplied by the data in reg. a_12 and reg.b_12 is bypassed. the data is shifted into the register by clocking ena and enb at the same time at half the clk_in frequency. the filter timing is shown in figure 8. pipeline ? out 1 0 20 pipeline ? in fb ? sel 20 20 20 GF9101 filter ? sum prom r clk ? in r r + x x x x x x filter_sum pipeline_in fb_sel clk_in sum 2 sum 1 sum 3 x x x pipeline_out 003 h x x x x x x sum 1 x x x 003 h + sum 3 sum 1 + sum 2
520 - 64 - 7 9 GF9101 fig. 7 input data a n and coefficients c n table 7: configuration word for an odd-tap symmetric filter bit no. configuration word description 0 1 data a and b are both signed data 2 11 2 0 one register delay 30 4 1 23-tap filter, bypass reg. b_12 5 x depending on loading mode. 6 x (see table 1) note: 2: bits 0 and 1 should have the same value for a 23 or 24 tap filter. table 8: internal ram addresses and contents coef_addr (6-0) memory contents 00 h 12 coefficients, for tap 1 ? > tap 12 c 4 c 5 c 6 c 7 c 8 c 9 c 10 c 3 c 2 c 1 c 0 c 11 c 4 c 5 c 6 c 7 c 8 c 9 c 10 c 3 c 2 c 1 c 0 (a) filter coefficients c n a 17 a 16 a 15 a 14 a 24 a 23 a 22 a 21 a 19 a 18 a 4 a 5 a 6 a 7 a 8 a 9 a 10 a 3 a 2 a 1 a 0 a 11 a 12 a 13 (b) input data a n a 20 a 25
520 - 64 - 7 10 GF9101 fig. 8 timing diagram for a 23-tap odd-symmetric filter assuming that the data a0 ? > a21 has already been shifted into the filter registers, by clocking ena and enb the data a22 enters data_a_in (figure 9a). during the first clk_in rising edge, the data in the a registers (a22 ? > a11) are selected by sel_a/b , to be multiplied by the coefficients, c0 ? > c11 in memory location 0, coef_addr 00 h . during the second clk_in rising edge the data in b registers (a0 ? > a10) are selected by sel_a/ b , to be multiplied by the coefficients, c0 ? >c10 (figure 9b). after passing through the adder tree and the delay (4 clk_in cycles in total), the two sums are added in the pipeline section of the filter. fb_sel selects pipeline_in during clk_in period 5, at which time a dc offset could be introduced at pipeline_in to be added to the sum. during clk_in period 6, fb_sel selects pipeline_out and the final filter sum is calculated and passed through to pipeline_out. fig. 9a data flow diagram for a 23 tap odd-symmetric filter fig. 9b data flow diagram for a 23 tap odd-symmetric filter even-tap symmetric filter the GF9101 can be configured as an even-tap symmetric filter. a 24-tap symmetric filter can be configured using one GF9101 by connecting the outputs of data_a_out to the inputs of data_b_in and taking the output at pipeline_out. for a 24-tap symmetric filter, the configuration word is shown in table 9. coef_addr (6 - 0) clk_in ena enb sel_a/b fb _sel pipeline _out 00 h configure zero load_en enc 0 1 2 3 4 5 6 7 8 9 10 11 a b a b a b a b a b a data_a_in b pipelined adder (a 22 x c 0 ) + (a 21 x c 1 ) + (a 20 x c 2 ) +...+(a 12 x c 10 ) + (a 11 x c 11 ) data ? a ? in data ? b ? out c 0 x x x x a 0 a 1 a 2 c 1 c 2 c 10 c 11 a 10 a 11 a 12 a 20 a 21 a 22 x pipelined adder (a 22 x c 0 ) + (a 21 x c 1 ) + (a 20 x c 2 ) +...+(a 12 x c 10 ) + (a 11 x c 11 ) data ? a ? in data ? b ? out c 0 x x x x a 0 a 1 a 2 c 1 c 2 c 10 c 11 a 11 a 12 a 20 a 21 a 22 (a 0 x c 0 ) + (a 1 x c 1 ) + (a 2 x c 2 ) +...+(a 10 x c 10 ) + a 10 x
520 - 64 - 7 11 GF9101 the filter coefficients are shown in figure 10. the timing is verysimilar to that of the even-symmetric case. fig. 10 input data a n and coefficients c n asymmetric filter the GF9101 can be used as a 24-tap asymmetric filter by configuring it the same way as the even-symmetric case. the difference is in the memory locations since the asymmetric case uses 24 different coefficients, i.e. two sets of filter coefficients. the filter coefficients and the memory locations are shown in table 10. the timing diagram is shown in figure 11. the data flow diagrams are shown in figures 11a and 11b. table 9: configuration word for a 24-tap symmetric filter bit no. config. word description 01 3 data a and b are both signed data 11 2 0 one register delay 30 4 0 24-tap filter, connect the outputs of data_a_out to the inputs of data_b_in. 5 x depending on the loading mode 6 x see table 1 note 3. bits 0 and 1 should have the same value for a 23 or 24 tap filter c 4 c 5 c 6 c 7 c 8 c 9 c 10 c 3 c 2 c 1 c 0 c 11 a 17 a 16 a 15 a 14 a 24 a 23 a 22 a 21 a 20 a 19 a 18 c 4 c 5 c 6 c 7 c 8 c 9 c 10 c 3 c 2 c 1 c 0 c 11 a 4 a 5 a 6 a 7 a 8 a 9 a 10 a 3 a 2 a 1 a 0 a 11 a 12 a 13 (a) filter coefficients c n (b) input data a n table 10:internal ram address & contents for a 24-tap asymmetric filter coef_addr (6-0) memory contents 00 h first set of 12 coefficients, c 0 ? > c 11 01 h second set of 12 coefficients, c23 ? > c12
520 - 64 - 7 12 GF9101 fig. 11 timing diagram for a 24 tap asymmetric filter fig. 11a data flow diagram for a 24 tap asymmetric filter fig. 11b data flow diagram for a 24 tap asymmetric filter cascading in the previous section, configuration for a 24 tap filter using only one GF9101 was shown. to realize higher order (>24) filters, up to three GF9101's would allow a 72 tap fir filter to be configured without any additional hardware. in figure 13, two GF9101's are cascaded together to obtain a 48 tap filter. the data enters data_a_in (device number 1) and exits from data_b_out (device number 1). in device number 2, the data_a_out bus is connected to data_b_in in order to feed the data back in to the b12 register of the same device. the contents of the configuration register will be different for the two devices to compensate for a three register delay introduced when two GF9101's are cascaded to get a 48 tap filter. the configuration register contents are shown in table 11. pipeline _out coef_addr (6-0) 01 h 00 h 01 h 01 h 00 h 01 h 00 h 00 h fb _sel configure zero load_en enc 01 h 00 h 01 h 0 1 2 3 4 5 6 7 8 9 10 clk_in ena enb sel_a/b a b a b a b a b a b data_a_in b pipelined adder (a 23 x c 0 ) + (a 22 x c 1 ) + (a 21 x c 2 ) +...+(a 13 x c 10 ) + (a 12 x c 11 ) data ? a ? in data ? b ? out c 0 x x x x x a 0 a 1 c 1 c 2 c 10 c 11 a 10 a 13 a 21 a 22 a 11 a 2 a 12 a 23 pipelined adder (a 0 x c 23 ) + (a 1 x c 22 ) + (a 2 x c 21 ) +...+(a 10 x c 13 ) + (a 11 x c 12 ) data ? a ? in data ? b ? out c 23 x x x x x a 0 a 1 a 2 c 22 c 21 c 13 c 12 a 10 a 12 a 13 a 21 a 22 a 23 a 11 (a 23 x c 0 ) + (a 22 x c 1 ) + (a 21 x c 2 ) +...+(a 13 x c 10 ) + (a 12 x c 11 ) +
520 - 64 - 7 13 GF9101 for the 48 tap filter, input data a n and coefficients c n are shown in figure 12. the pipelined output section of the 48 tap filter is shown in figure 14. note that two register delays are introduced due to r2 and r3 between the accumulators of device number 1 and number 2. an additional delay is introduced when the filter-sum is fed back to be added to the next sum by selecting fb_sel_1. the timing diagram for the 48 tap asymmetric filter is shown in figure 15. the processing clock runs at twice the data rate since the a and b registers of the GF9101 are multiplexed internally.. fig. 12 input data a n and coefficients c n table 11 configuration word for the cascaded GF9101 ? s device no. 1 device no. 2 bit no. config. word config. word description 0 1 1 data a and b are both signed data. 11 1 2 0 0 1 clock cycle delay in device no. 1 and 4 clock delay in device no. 2 30 1 4 0 0 using each device as 2 x 12 tap filters. note that in device no. 2 data_a_out is externally connected to data_b_in. 5 0 0 assuming serial load mode selected for both devices. 60 0 c 4 c 5 c 6 c 36 c 38 c 40 c 3 c 2 c 1 c 0 c 41 c 44 c 43 c 39 c 42 c 45 c 46 c 7 c 37 c 47 a 47 a 11 a 45 a 4 a 5 a 40 a 41 a 42 a 43 a 3 a 1 a 0 a 46 a 9 a 10 a 44 a 8 a 7 a 6
520 - 64 - 7 14 GF9101 fig. 13 141 142 143 144 145 146 147 149 151 151 127 128 130 131 132 133 134 135 136 137 23 58 57 56 55 54 53 52 51 50 48 24 22 38 37 35 34 32 31 30 28 27 26 15 14 13 12 11 9 7 5 4 2 96 97 98 101 102 103 104 105 78 77 75 74 72 47 45 44 43 42 25 138 71 70 68 67 66 65 64 63 62 61 141 142 143 144 145 146 147 149 151 151 82 84 85 87 89 91 92 93 94 95 106 107 108 110 111 112 114 115 117 118 data_in [9..0] offset [7..0] clk_in address [6..0] ena enb sel a/b +5v +5v coefwr config data clk oe ce serial prom 7 6 +5v xc1736 da_in9 da_in8 da_in7 da_in6 da_in5 da_in4 da_in3 da_in2 da_in1 da_in0 ena db_out9 db_out8 db_out7 db_out6 db_out5 db_out4 db_out3 db_out2 db_out1 db_out0 enb sel_a/b pl_in19 pl_in18 pl_in17 pl_in16 pl_in15 pl_in14 pl_in13 pl_in12 pl_in11 pl_in10 pl_in9 pl_in8 pl_in7 pl_in6 pl_in5 pl_in4 pl_in3 pl_in2 pl_in1 pl_in0 coefd7 coefd6 coefd5 coefd4 coefd3 coefd2 coefd1 coefd0 coef_ad9 coef_ad8 coef_ad7 coef_ad6 coef_ad5 coef_ad4 coef_ad3 coef_ad2 coef_ad1 coef_ad0 enc clk da_out9 da_out8 da_out7 da_out6 da_out5 da_out4 da_out3 da_out2 da_out1 da_out0 db_in9 db_in8 db_in7 db_in6 db_in5 db_in4 db_in3 db_in2 db_in1 db_in0 pl_out19 pl_out18 pl_out17 pl_out16 pl_out15 pl_out14 pl_out13 pl_out12 pl_out11 pl_out10 pl_out9 pl_out8 pl_out7 pl_out6 pl_out5 pl_out4 pl_out3 pl_out2 pl_out1 pl_out0 sloadcmp c o n f i g l o a d e n c o e f w r t e s t n s c a n i n n e g a t e z e r o n s c a n e n 1 GF9101 cadr6 cadr5 cadr4 cadr3 cadr2 cadr1 cadr0 f b s e l 127 128 130 131 132 133 134 135 136 137 23 58 57 56 55 54 53 52 51 50 48 24 22 38 37 35 34 32 31 30 28 27 26 15 14 13 12 11 9 7 5 4 2 96 97 98 101 102 103 104 105 78 77 75 74 72 47 45 44 43 42 25 138 71 70 68 67 66 65 64 63 62 61 82 84 85 87 89 91 92 93 94 95 106 107 108 110 111 112 114 115 117 118 output [11..0] address [6..0] ena enb +5v +5v coefwr config 1 2 3 4 data clk oe ce serial prom 7 6 +5v xc1736 da_in9 da_in8 da_in7 da_in6 da_in5 da_in4 da_in3 da_in2 da_in1 da_in0 ena db_out9 db_out8 db_out7 db_out6 db_out5 db_out4 db_out3 db_out2 db_out1 db_out0 enb sel_a/b pl_in19 pl_in18 pl_in17 pl_in16 pl_in15 pl_in14 pl_in13 pl_in12 pl_in11 pl_in10 pl_in9 pl_in8 pl_in7 pl_in6 pl_in5 pl_in4 pl_in3 pl_in2 pl_in1 pl_in0 coefd7 coefd6 coefd5 coefd4 coefd3 coefd2 coefd1 coefd0 coef_ad9 coef_ad8 coef_ad7 coef_ad6 coef_ad5 coef_ad4 coef_ad3 coef_ad2 coef_ad1 coef_ad0 enc clk da_out9 da_out8 da_out7 da_out6 da_out5 da_out4 da_out3 da_out2 da_out1 da_out0 db_in9 db_in8 db_in7 db_in6 db_in5 db_in4 db_in3 db_in2 db_in1 db_in0 pl_out19 pl_out18 pl_out17 pl_out16 pl_out15 pl_out14 pl_out13 pl_out12 pl_out11 pl_out10 pl_out9 pl_out8 pl_out7 pl_out6 pl_out5 pl_out4 pl_out3 pl_out2 pl_out1 pl_out0 sloadcmp c o n f i g l o a d e n c o e f w r t e s t n s c a n i n n e g a t e f b s e l z e r o n s c a n e n 2 GF9101 sel a/b cadr6 cadr5 cadr4 cadr3 cadr2 cadr1 cadr0 21 18 17 158 157 156 126 124 123 zero fb_sel-1 negate 21 18 17 158 157 156 126 124 123 zero fb_sel-2 negate clk_in
520 - 64 - 7 15 GF9101 fig. 14 pipelined output stages for two cascaded GF9101 ? s dedicated serial prom's can be used to load the coefficients into the internal ram of each GF9101. note that when data is fed back into data_b_in, it enters register b12 of device number 2. therefore, while loading the coefficients into the internal ram for the b registers the coefficients should be arranged as shown in table 12. if a single source is used for coefficient loading, the load_en signal is used to select the appropriate device. also, the s_load_cmp signal can be used as an indicator for a successful load. fig. 15 timing diagram for a 48 tap asymmetric filter table 12: internal ram address and contents for a 48-tap asymmetric filter using two cascaded GF9101 ? s coef_addr internal ram contents device no. 1 device no. 2 00 h c0 ? > c11 (registers a1 ? > a12) c12 ? > c23 (registers a1 ? > a12) 01 h c47 ? > c36 (registers b1 ? > b12) c35 ? > c24 (registers b1 ? > b12) r 2 1 0 20 20 20 8 filter ? sum 1 offset [7..0] r r 1 r 4 1 0 20 fb ? sel-2 20 20 GF9101 filter ? sum 2 output [11..0] device no.2 r r 2 1 0 20 fb ? sel-1 20 20 8 GF9101 filter ? sum 1 device no.1 r r 1 20 20 20 12 r 3 data_a_in zero load_en clk_in configure ena enb sel_a/b 00 h 01 h 00 h 01 h 00 h 01 h 00 h 01 h 00 h 01 h 00 h 01 h 00 h 01 h 1 2 3 4 5 6 7 8 9 10 11 12 13 14 coef_addr (6-0) fb_sel-1 negate fb_sel-2
520 - 64 - 7 16 GF9101 GF9101 pin designations GF9101 power consumption vs clock rate fig. 16 equivalent input/output circuit 71 70 68 67 66 65 64 63 62 61 58 57 56 55 54 53 52 51 50 48 82 84 85 87 89 81 82 83 84 85 106 106 108 110 111 112 114 115 117 118 16 127 128 130 131 132 133 134 135 136 137 23 141 142 143 144 145 146 147 148 149 151 24 22 38 37 35 34 32 31 30 28 27 26 15 14 13 12 11 9 7 5 4 2 96 97 98 101 102 103 104 105 78 77 75 74 72 47 45 44 43 42 25 138 GF9101 160 pin metal quad +/- 5v 1, 10, 20, 29, 40, 41, 59, 69, 80, 81, 90, 99, 109, 120, 121, 129, 140, 150, 160 gnd 3, 6, 8, 19, 33, 36, 39, 46, 49, 60, 73, 76, 79, 83, 86, 88, 100, 113, 116, 119, 122, 125, 139, 153, 155, 159 da-in9 da-in8 da-in7 da-in6 da-in5 da-in4 da-in3 da-in2 da-in1 da-in0 ena db-in9 db-in8 db-in7 db-in6 db-in5 db-in4 db-in3 db-in2 db-in1 db-in0 enb selab pl-in19 pl-in18 pl-in17 pl-in16 pl-in15 pl-in14 pl-in13 pl-in12 pl-in11 pl-in10 pl-in9 pl-in8 pl-in7 pl-in6 pl-in5 pl-in4 pl-in3 pl-in2 pl-in1 pl-in0 coef-d7 coef-d6 coef-d5 coef-d4 coef-d3 coef-d2 coef-d1 coef-d0 coef-ad9 coef-ad8 coef-ad7 coef-ad6 coef-ad5 coef-ad4 coef-ad3 coef-ad2 coef-ad1 coef-ad0 enc clk_in da-out9 da-out8 da-out7 da-out6 da-out5 da-out4 da-out3 da-out2 da-out1 da-out0 db-out9 db-out8 db-out7 db-out6 db-out5 db-out4 db-out3 db-out2 db-out1 db-out0 pl-out19 pl-out18 pl-out17 pl-out16 pl-out15 pl-out14 pl-out13 pl-out12 pl-out11 pl-out10 pl-out9 pl-out8 pl-out7 pl-out6 pl-out5 pl-out4 pl-out3 pl-out2 pl-out1 pl-out0 sloadcmp 21 18 17 158 157 156 126 124 123 absolute maximum ratings parameter value supply voltage -0.3 to +7.0 v input voltage -0.3 to (v dd +0.3) v short circuit duration (single output) 1 second storage temp - 40 to +125 c recommended operating conditions parameter symbol limit unit dc supply voltage v dd + 3.0 to + 5.5 v ambient t a 0 to +70 c junction t j +150 c 5 4 3 2 1 10 20 30 40 50 60 70 80 frequency (mhz) p (w) v cc = 5 v t a = 25 c n substrate control input p well gnd d1 n p v dd d2 d1 d2 gnd n substrate p well n p n+ p+ v dd n+ p+
520 - 64 - 7 17 GF9101 dc electrical characteristics v cc = 5v 5%, t a = 0 c to 70 c unless otherwise shown parameter symbol conditions min typ max units voltage input low v il --1.5v voltage input high v ih 3.5 - - v voltage output high v oh 2.4 4.5 - v switching threshold v t -2.5- v input current i in v in = v dd or v ss -10 +/-1 10 a output current high i oh pipeline_out - - 2 ma i oh data_a_out, data_b_out - - 1 ma output current low i ol pipeline_out - - 2 ma i ol data_a_out, data_b_out - - 1 ma quiescent supply current i dd v in = v dd or v ss -12-ma output short circuit current i os v dd = max, v o = v dd 30 75 140 ma v dd = max, v o = 0v 25 70 140 ma input capacitance c in -4.0-pf output capacitance c out -3.5-pf switching characteristics v cc = 5v 5%, t a = 0 c to 70 c unless otherwise shown output delay t d -8-ns setup time t s all inputs 2 - - ns hold time t h all inputs 6 - - ns clock rate ? max --40mhz
520 - 64 - 7 18 GF9101 GF9101 timing configuration mode description symbol min max unit 1 clk_in duration time (high) t 1 12 ns 2 clk_in duration time (low) t 2 12 ns 3 clk_in period time t 25 ns 4 configure pulse width t 3 t+10 ns 5 coef_data to configure setup time t 4 10 ns 6 coef_data to configure hold time t 5 5ns t t 1 t 2 clk-in t 3 t 4 t 5 configure coef-data (6-0)
520 - 64 - 7 19 GF9101 memory loading - parallel interface description symbol min max unit 1load_en to clk_in set up time* t 1 4ns 2load_en to clk_in hold time** t 2 6ns 3coef_wr to clk_in set up time* t 3 4ns 4coef_wr to clk_in hold time** t 4 6ns 5 coef_data to clk_in set up time t 5 2ns 6 coef_data to clk_in hold time t 6 6ns 7 coef_addr to clk_in set up time t 7 2ns 8 coef_addr to clk_in hold time t 8 6ns * to enable loading ** to disable loading load_en coef_wr coef_data (7-0) coef_addr (9-0) clk_in t 1 t 3 t 5 t 6 t 7 t 8 t 2 t 4
520 - 64 - 7 20 GF9101 memory loading - microprocessor interface description symbol min max unit 1load_en to coef_wr set up time t 1 2na 2coef_wr puls width low t 2 80 ns 3load_en to coef_wr hold time t 3 6ns 4coef_wr pulse width, high t 4 20 ns 5 coef_data to coef_wr set up time t 5 10 ns 6 coef_data to coef_wr hold time t 6 10 ns 7 coef_addr to coef_wr set up time t 7 2ns 8 coef_addr to coef_wr hold time t 8 6ns coef_data (7-0) coef_addr (9-0) coef_wr load_en t 1 t 3 t 5 t 6 t 7t 8 t 2 t 4
520 - 64 - 7 21 GF9101 memory loading - serial run mode description symbol min max unit 1load_en to coef_wr set up time t 1 4ns 2load_en to coef_wr hold time t 2 6ns 3coef_wr period t 3 4xt ns 4 coef_data(7) to coef_wr set up time t 4 2ns 5 coef_data(7) to coef_wr hold time t 5 6ns description symbol min max unit 1 ena to clk_in set up time t 1 2ns 2 ena to clk_in hold time t 2 6ns 3 data_a_in to clk_in set up time t 3 2ns 4 data_a_in to clk_in hold time t 4 6ns coef_data (7) coef_wr load_en t 1 t 3 t 5 t 4 t 2 clk_in s_load_cmp bit 1 bit 2 bit 3 bit 15551 bit 15552 x t 1 t 2 t 3 t 4 clk_in en a data_a_in (9-0) data_a_out (9-0)
520 - 64 - 7 22 GF9101 run mode description symbol min max unit 1sel_a/b to clk_in set up time t 1 2ns 2 enc to clk_in set up time t 2 2ns 3 enc to clk_in hold time t 3 6ns 4 fb_sel to clk_in set up time t 4 2ns 5 fb_sel to clk_in hold time t 5 6ns t 1 t 2 t 3 t 4 t 5 clk_in sel_a/b enc fb_sel
520 - 64 - 7 23 gennum corporation mailing address: p.o. box 489, stn. a, burlington, ontario, canada l7r 3y3 tel. +1 (905) 632-2996 fax. +1 (905) 632-5946 shipping address: 970 fraser drive, burlington, ontario, canada l7l 5p5 gennum japan corporation c-101, miyamae village, 2-10-42 miyamae, suginami-ku tokyo 168-0081, japan tel. +81 (03) 3334-7700 fax. +81 (03) 3247-8839 gennum uk limited centaur house, ancells bus. park, ancells rd, fleet, hants, england gu13 8uj tel. +44 (0)1252 761 039 fax +44 (0)1252 761 114 gennum corporation assumes no responsibility for the use of any circuits described herein and makes no representations that th ey are free from patent infringement. ? copyright october 1998 gennum corporation. all rights reserved. printed in canada. GF9101 160 pin metal quad pinout s e l ? a / b 9 0 ................... 9 0 ................... 9 0 0.........................9 10......................19 0..................7 ................... 0.........................9 10......................19 9 0 ................... 9 5 ........ 4 0 ........ data ? a ? out data ? b ? out coef ? addr pipeline ? in coef ? addr pipeline ? out coef ? data pipeline ? out data ? a ? in clk ? in data ? b ? in zero fb ? sel negate s l o a d c m p c e n c o n f i g u r e e n a e n b e n c 41 40 160 1 120 121 81 80 pipeline ? in c o e f - w r revision notes: remove ? not recommended for new designs ? watermark. correct package name to 160 pin metal quad. document identification data sheet the product is in production. gennum reserves the right to make changes at any time to improve reliability, function or design, in order to provide the best product possible. caution electrostatic sensitive devices do not open packages or handle except at a static-free workstation


▲Up To Search▲   

 
Price & Availability of GF9101

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X